Skip to content

FAC-97 perf: add pagination to curriculum list endpoints#213

Merged
y4nder merged 1 commit intodevelopfrom
claude/fix-issue-209-ZZnes
Mar 29, 2026
Merged

FAC-97 perf: add pagination to curriculum list endpoints#213
y4nder merged 1 commit intodevelopfrom
claude/fix-issue-209-ZZnes

Conversation

@y4nder
Copy link
Copy Markdown
Member

@y4nder y4nder commented Mar 29, 2026

Summary

  • Add page and limit query params to /curriculum/departments, /curriculum/programs, and /curriculum/courses by extending the shared PaginationQueryDto (defaults: page=1, limit=10, max=100)
  • Switch service methods from em.find() to em.findAndCount() with limit/offset, returning { data, meta } paginated responses with PaginationMeta
  • Create DepartmentListResponseDto, ProgramListResponseDto, and CourseListResponseDto following the established codebase pattern (matches admin, faculty, dimensions modules)

Test plan

  • All 38 curriculum service tests pass (updated existing + added pagination-specific tests)
  • Tests cover: default pagination params, custom page/limit, offset calculation, meta computation, empty-scope empty pages
  • npm run lint passes
  • npm run build passes

Closes #209

https://claude.ai/code/session_01Ug6JLCMPhy42Skcq7tWyVV

Curriculum list endpoints (/departments, /programs, /courses) returned
unbounded result sets. Add page/limit query params via PaginationQueryDto
and return paginated { data, meta } responses using findAndCount, matching
the pattern used by admin, faculty, and dimensions modules.

https://claude.ai/code/session_01Ug6JLCMPhy42Skcq7tWyVV
@y4nder y4nder linked an issue Mar 29, 2026 that may be closed by this pull request
4 tasks
@y4nder y4nder self-assigned this Mar 29, 2026
@y4nder y4nder merged commit fdbe369 into develop Mar 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

FAC-97 perf: add pagination to curriculum list endpoints

2 participants